/*
 * Copyright 2013 ThirdMotion, Inc.
 *
 *	Licensed under the Apache License, Version 2.0 (the "License");
 *	you may not use this file except in compliance with the License.
 *	You may obtain a copy of the License at
 *
 *		http://www.apache.org/licenses/LICENSE-2.0
 *
 *		Unless required by applicable law or agreed to in writing, software
 *		distributed under the License is distributed on an "AS IS" BASIS,
 *		WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *		See the License for the specific language governing permissions and
 *		limitations under the License.
 */

/// Score Model
/// ======================
/// Track score and lives.

using System;

namespace strange.examples.multiplecontexts.game
{
    public class ScoreModel : IScore
    {
        private int initLives = 3;

        public int score { get; private set; }

        public int lives { get; private set; }

        public ScoreModel()
        {
            Reset();
        }

        public int AddToScore(int value)
        {
            score += value;
            return score;
        }

        public int LoseLife()
        {
            lives = Math.Max(0, lives - 1);
            return lives;
        }

        public void Reset()
        {
            score = 0;
            lives = initLives;
        }

    }
}

